HAL RAMECC constants migration

This section provides information about the HAL RAMECC constants migration .

HAL RAMECC error codes

HAL1

HAL2

#define HAL_RAMECC_ERROR_NONE
#define HAL_RAMECC_ERROR_BUSY
#define HAL_RAMECC_ERROR_TIMEOUT
#define HAL_RAMECC_ERROR_INVALID_CALLBACK

Removed as RAMECC hardware does not provide hardware error.


HAL RAMECC Monitor flags and error detected codes

HAL1

HAL2

#define RAMECC_FLAG_SINGLEERR_R
#define RAMECC_FLAG_DOUBLEERR_R
#define RAMECC_FLAG_DOUBLEERR_W
#define RAMECC_FLAGS_ALL

#define HAL_RAMECC_NO_ERROR
#define HAL_RAMECC_SINGLEERROR_DETECTED
#define HAL_RAMECC_DOUBLEERROR_DETECTED

The ECC error type single or double are signaled by the field type in the structure hal_ramecc_ecc_info_t.

typedef enum
{
  HAL_RAMECC_ECC_SINGLE,
  HAL_RAMECC_ECC_DOUBLE,
  HAL_RAMECC_ECC_DOUBLE_BYTE_WRITE,
  HAL_RAMECC_ECC_NONE,
} hal_ramecc_ecc_type_t;

Related concept: Replace Finite Parameter Defines (Including PPP Instances) with Enum Types at HAL Levels.


HAL RAMECC Global Interrupts

HAL1

HAL2

#define RAMECC_IT_GLOBAL_SINGLEERR_R
#define RAMECC_IT_GLOBAL_DOUBLEERR_R
#define RAMECC_IT_GLOBAL_DOUBLEERR_W
#define RAMECC_IT_GLOBAL_ALL

#define RAMECC_IT_MONITOR_SINGLEERR_R
#define RAMECC_IT_MONITOR_DOUBLEERR_R
#define RAMECC_IT_MONITOR_DOUBLEERR_W
#define RAMECC_IT_MONITOR_ALL

#define RAMECC_IT_GLOBAL_ID
#define RAMECC_IT_MONITOR_ID
#define RAMECC_IT_GLOBAL_ENABLE
#define HAL_RAMECC_CONTROLLER_IT_SINGLE
#define HAL_RAMECC_CONTROLLER_IT_DOUBLE
#define HAL_RAMECC_CONTROLLER_IT_DOUBLE_BYTE_WRITE
#define HAL_RAMECC_CONTROLLER_IT_ALL

#define HAL_RAMECC_MONITOR_IT_SINGLE
#define HAL_RAMECC_MONITOR_IT_DOUBLE
#define HAL_RAMECC_MONITOR_IT_DOUBLE_BYTE_WRITE
#define HAL_RAMECC_MONITOR_IT_ALL